There are many applications in which commands may be generated automatically to perform a certain function. One application includes the generation of electronic commands necessary to provision, modify and delete service with regard to telephone subscription service. In particular, electronic commands may be switch specific commands where a switch is included in the Public Switch Telephone Network (PSTN).
In some systems and applications, an existing system is replaced by a more updated system which generates commands, such as the electronic commands, for execution by various telephone switches. In this particular instance, a technique may be used to verify the correctness of the new system replacing an existing system with regard to the commands generated by the new system in an automated and more efficient fashion. However, one of the problems is how to verify the correctness of the new commands generated by the new system in comparison with those of the existing system. One technique is to perform a manual comparison by having a person examine the commands generated by the existing system and those generated by the new system. If there is a match, such as by string or character-by-character comparison, then it may be concluded that the commands generated by the new system are correct. However, this presents several problems in that having a user manually compare these commands, such as by visual comparison, is often inefficient and may introduce unnecessary human error.
An improvement upon this technique is to provide an automated system for comparing the commands such as by a character or string comparison of the existing system commands with those generated by the new system. However, even with an automated method for comparison, additional problems may exist. For example, the commands generated by the two systems may not be identical. In other words, commands may perform equivalent functions but may not be string character identical. For example, features or parameters for a particular command may be in different orders. Additionally, there may be a command generated by the new system which is equivalent to the command generated and used in an existing system. For example, the new provision existing may generate three commands which perform the same function as a single command in an existing provisioning system or vice versa. Neither one is incorrect, however it is difficult to come up with a technique for performing verification of all of these possibilities.
Thus, what is desired is an efficient and flexible system for verifying the quality of the commands automatically generated in a computer system.